The present invention relates to the field of Internet Protocol Networks, and more particularly to methods for providing increased efficiency while utilizing label switching capabilities at Label Switching Routers within a Multi-Protocol Label Switching Network.
The explosive growth of the Internet and private Intranets has resulted in a large and growing network infrastructure of Internet Protocol (IP) routers. The Internet is a packet-switched network, meaning that the data transmitted over the network is segmented and conveyed in packets. Unlike circuit-switched networks such as the public switched telephone network (PSTN), a packet-switched network is connectionless; that is, a dedicated end-to-end path does not need to be established for each transmission. Rather, each router calculates a preferred routing for a packet given current traffic patterns, and sends the packet to the next router. Thus, even two packets from the same message may not travel the same physical path through the network. This method is a type of layer three forwarding known as dynamic routing.
An IP packet is comprised of a packet data portion and an IP header. The IP header is comprised of a variety of header fields, including a source address, a destination address, and an IP header checksum. The IP header, and therefore those fields which comprise the IP header, represent a transmission overhead since header bits are transported along with the actual data bits for each packet. Additionally, since IP routers forward IP packets based on each packet""s destination address, each IP packet header must be parsed at a controlling microprocessor in each router through which a packet is forwarded. The destination address associated with each respective packet is accessed by the microprocessor and a forwarding lookup table is utilized to forward each packet to a next router. Despite advances associated with processor speeds, the performance of forwarding algorithms and functions at each IP router utilizes precious router processing capacity and consequently limits the forwarding capacity of the routers.
A recently developed approach for improving the capacity at an IP router is through the use of label switching. Label switching is efficiently utilized in Multi-Protocol Label Switching networks incorporating a plurality of Label Switching Routers. A Label Switching Router is a router operable to forward IP packets conventionally via layer three forwarding, and additionally, is operable to perform layer two switching if a switching label is appended to the IP packet. Label switching is initiated by first identifying, at a Label Switching Router, a plurality of IP packets with a common destination address and a common source address. If the quantity of identified packets is greater than a predetermined threshold value, then a label is issued and communicated between router peers. Subsequently, all IP packets having that same common destination address and common source address have a label appended. The label is used to define a layer two switched-packet flow through one or more Label Switching Routers. Layer two switching can significantly increase the forwarding speed when compared to layer three forwarding. This is because the router microprocessor is relieved of the tasks of parsing each packet""s IP header, calculating the next hop address, and forwarding the packet.
However, despite improvements in packet transport speed by using layer two label switching rather than conventional layer three forwarding, an additional bandwidth overhead is incurred in order to establish such a switched flow of labeled packets. Specifically, the overhead associated with a switched packet flow includes the appended switching label, in addition to the aforementioned packet header, for each packet transported by the switched packet flow. A reduction in the quantity of overhead expended for the transport of each packet would therefore result in a corresponding beneficial increase in packet transport efficiency.
We have realized that despite improvements in packet transport speed by using layer two label switching rather than conventional layer three forwarding, an additional overhead is incurred in order to establish such a switched flow of labeled packets. Specifically, the overhead associated with a switched packet flow includes the appended switching label, in addition to the aforementioned packet header, for each packet transported by the switched packet flow. A reduction in the quantity of overhead expended for the transport of each packet would therefore result in a corresponding beneficial increase in packet transport efficiency.
Therefore, overhead is reduced and packet transport efficiency is increased for a flow of switched packets by modifying the control message or messages used to establish the flow of switched packets to include a header removal field. Packet headers corresponding to packets of a switched packet flow are not parsed, therefore either the entire header, or a portion of the header, may be removed from each packet assigned a label. A header removal field is shared among routers while signaling to establish a labeled flow. The header removal field is used to provide header structure information to those routers which will be utilized for transport of the subsequent labeled flow. Thus, since layer two switching utilizes the appended label instead of the packet header for conveying a labeled packet, the packet header may be partially or completely removed. The header removal field is used to inform routers utilized for a labeled packet flow which portions of the subsequently conveyed packet headers will be removed and which portions will be present. The ability to remove at least a portion of the packet headers being transported, and the ability to communicate the exact header structure associated with packets within a flow, to the other routers used for conveying that flow, greatly reduces transmission overhead resulting in a correspondingly high packet transport efficiency.
In one embodiment of the present invention, a first value is assigned to the header removal field if the entire header is removed, a second value is assigned to the header removal field if only the destination address is removed, a third value is assigned to the header removal field if only the source address is removed, and a fourth value is assigned to the header removal field if none of the packet header fields are removed. This embodiment is especially advantageous in that it allows merging of individual flows having only one common originating or terminating node for that portion of a shared label switching path. The use of common labels, instead of the conventional practice of issuing a new label for each subsequently identified opportunity to establish a packet flow, allows routers to use and maintain a smaller quantity of total labels. Using and maintaining fewer labels at network routers has at least the following beneficial aspects: (i) reduced packet processing time at each switching router since routers maintain and access fewer labels, (ii) lower switching costs as a result of fewer required label swaps at routers, and (iii) reduced overhead since the number of bits necessary to uniquely describe a smaller total number of labels is correspondingly smaller as well.